package com.gt.aep.base.dao.systemManage;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.gt.aep.base.entity.systemManage.SysPermission;
import com.gt.aep.base.entity.systemManage.SysPermissionSysRole;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface SysPermissionSysRoleDao {
    /**
     * 新增系统角色-权限关系
     * @param sysPermissionSysRole
     * @return
     */
    int insert(SysPermissionSysRole sysPermissionSysRole);

    /**
     * 修改系统角色-权限关系
     * @param sysPermissionSysRole
     * @return
     */
    int update(SysPermissionSysRole sysPermissionSysRole);

    /**
     * 批量删除系统角色-权限关系
     * @param ids
     * @return
     */
    int delete(String[] ids);

    /**
     * 根据权限id查询系统角色列表
     * @param pid 权限id
     * @return
     */
    List<SysPermissionSysRole> getListByPid(@Param("pid") String pid);

    /**
     * 根据权限id查询系统角色个数
     * @param pid 权限id
     * @return
     */
    int getCountByPid(@Param("pid") String pid);

    /**
     * 根据系统角色id获取列表
     * @param sysRoleId 系统角色id
     * @return
     */
    List<SysPermission> getListBySysRoleId(@Param("sysRoleId") String sysRoleId);

    /**
     * 根据系统角色id获取列表count
     * @param sysRid
     * @return
     */
    int getCountBySysRoleId(@Param("sysRid") String sysRid);

    /**
     * 根据权限ID删除权限-系统角色关系表
     * @param pid
     * @return
     */
    int deleteByPid(@Param("pid") String pid);

    /**
     * 根据系统角色ID删除权限-系统角色关系表内容
     * @param sysRid
     * @return
     */
    int deleteBySysRid(@Param("sysRid") String sysRid);
}
